/**
 * 环境变量配置管理
 */

// 环境配置
const ENV_CONFIG = {
  // API基础地址 - 指向后端服务
  API_BASE_URL: "http://localhost:8080",

  // 是否开启调试模式
  DEBUG: true,

  // 是否使用模拟数据（开发环境）
  USE_MOCK_DATA: false, // 设置为false使用真实API，true使用模拟数据

  // WebSocket地址
  WS_BASE_URL: "ws://localhost:8080/ws",
  WS_URL: "ws://localhost:8080/ws", // 修正WebSocket地址指向后端

  // AI服务配置 - 指向Python AI服务
  AI_API_BASE_URL: "http://localhost:8000", // Python AI服务地址
  AI_API_KEY: "86c1cb5f5dc6496598ee6662ad54a288.i0gSQOSVp8UiRapX",
  AI_API_ENDPOINT: "https://open.bigmodel.cn/api/paas/v4/chat/completions",
  AI_MODEL: "glm-4",

  // 开发环境配置
  DEVELOPMENT: {
    ENABLE_REQUEST_LOGS: true,
    ENABLE_ERROR_BOUNDARY: true,
    ENABLE_PERFORMANCE_MONITOR: true,
  },

  // 生产环境配置
  PRODUCTION: {
    ENABLE_REQUEST_LOGS: false,
    ENABLE_ERROR_BOUNDARY: true,
    ENABLE_PERFORMANCE_MONITOR: false,
  },
};

// API端点配置
export const API_ENDPOINTS = {
  // 认证相关 (与后端UserController匹配)
  AUTH: {
    LOGIN: "/api/v1/user/login",
    REGISTER: "/api/v1/user/register",
    SEND_CODE: "/api/v1/user/sendCode",
    USER_INFO: "/api/v1/user/info",
    LOGOUT: "/api/v1/user/logout",
    CAPTCHA: "/api/v1/user/notify",
  },

  // AI聊天 - 切换到Python AI服务
  AI: {
    CHAT: "/api/teach/chat", // Python AI流式聊天
    STREAM_CHAT: "/api/teach/chat", // Python AI流式聊天
    COMMENT: "/api/teach/comment", // Python AI评论分析
    UPLOAD: "/api/teach/upload", // Python AI文件处理
    
    // 文件处理相关
    FILE_OUTLINE: "/api/file/outline", // 生成文件大纲
    FILE_EXAM: "/api/file/exam", // 生成考试题目
    FILE_PPT: "/api/file/ppt", // 生成PPT
    
    // 兼容性接口，保持原有调用方式
    GENERATE_QUESTIONS: "/api/file/exam",
    ANALYZE: "/api/teach/comment",
  },

  // 教师端 (对应TeacherController /api/v1/tea)
  TEACHER: {
    // 基础接口 - 已确认存在
    LIST_CLASS: "/api/v1/tea/list_class",
    CREATE_CLASS: "/api/v1/tea/create",
    DELETE_CLASS: "/api/v1/tea/delete",
    INFO_CLASS: "/api/v1/tea/info",
    ALLOW_STUDENT: "/api/v1/tea/allow",
    ATTEND_LIST: "/api/v1/tea/attend",

    // 文件管理 - 已确认存在
    UPLOAD_FILE: "/api/v1/tea/upload_file",
    ADD_FILE: "/api/v1/tea/add_file",
    LIST_FILE: "/api/v1/tea/list_file",
    PUBLISH_FILE: "/api/v1/tea/publish_file",
    DELETE_FILE: "/api/v1/tea/del_file",

    // 建议反馈 - 已确认存在
    LIST_ADVICE: "/api/v1/tea/list_advice",
    FEEDBACK_ADVICE: "/api/v1/tea/feedback_advice",

    // 考试管理 - 已确认存在
    ADD_EXAM: "/api/v1/tea/add_exam",
    LIST_EXAM: "/api/v1/tea/list_exam",

    // 兼容性接口 - 使用现有接口模拟
    OVERVIEW: "/api/v1/tea/list_class",
    CLASSES: "/api/v1/tea/list_class",
    COURSES: "/api/v1/tea/list_class",
    STUDENTS: "/api/v1/tea/attend",
    EXAMS: "/api/v1/tea/list_exam",
    ANALYSIS: "/api/v1/tea/list_advice",
    RESOURCES: "/api/v1/tea/list_file",
  },

  // 学生端 (对应StudentController /api/v1/stu)
  STUDENT: {
    // 班级管理 - 已确认存在
    ADD_CLASS: "/api/v1/stu/add",
    CLASS_INFO: "/api/v1/stu/info",

    // 文件管理 - 已确认存在
    UPLOAD_FILE: "/api/v1/stu/upload_file",
    GET_FILE: "/api/v1/stu/file",

    // 建议管理 - 已确认存在
    ADD_ADVICE: "/api/v1/stu/add_advice",
    LIST_ADVICE: "/api/v1/stu/list_advice",

    // 话题管理 - 已确认存在
    ADD_TOPIC: "/api/v1/stu/add_topic",
    LIST_TOPIC: "/api/v1/stu/list_topic",
    DEL_TOPIC: "/api/v1/stu/del_topic",
    GOOD_TOPIC: "/api/v1/stu/good_topic",

    // 评论管理 - 已确认存在
    ADD_COMMENT: "/api/v1/stu/add_comment",
    LIST_COMMENT: "/api/v1/stu/list_comment",
    DEL_COMMENT: "/api/v1/stu/del_comment",

    // 兼容性接口 - 使用现有接口或返回空数据
    COURSES: "/api/v1/stu/info", // 使用班级信息接口
    EXAMS: "/api/v1/stu/info", // 暂时使用班级信息接口
    RESOURCES: "/api/v1/stu/file", // 使用文件接口
    PROFILE: "/api/v1/user/info", // 使用用户信息接口
  },

  // 管理员 (对应ManagerController /api/v1/man - 目前后端为空)
  ADMIN: {
    // 注意：后端ManagerController目前是空的，需要后端实现这些接口
    // 暂时使用用户和教师接口来模拟
    TEACHERS: "/api/v1/user/info", // 暂时使用用户信息
    STUDENTS: "/api/v1/user/info", // 暂时使用用户信息
    COURSES: "/api/v1/tea/list_class", // 使用教师班级列表
    SETTINGS: "/api/v1/user/info", // 暂时使用用户信息
    STATISTICS: "/api/v1/user/info", // 暂时使用用户信息
    OVERVIEW: "/api/v1/user/info", // 暂时使用用户信息
  },

  // 考试相关 (使用教师考试接口)
  EXAM: {
    LIST: "/api/v1/tea/list_exam", // 获取考试列表
    ADD: "/api/v1/tea/add_exam", // 添加考试
    AI_GENERATE: "/api/v1/ai/analyze", // AI生成题目 (使用AI分析接口)
    DETAIL: "/api/v1/tea/list_exam", // 考试详情
  },

  // 文件上传
  UPLOAD: {
    IMAGE: "/api/v1/stu/upload_file",
    DOCUMENT: "/api/v1/stu/upload_file",
    FILE: "/api/v1/stu/upload_file",
  },
};

export default ENV_CONFIG;
